package com.youlai.boot.modules.exhibition.model;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.youlai.boot.modules.common.base.BfBaseEntity;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;
import java.math.BigDecimal;

@Data
@TableName("bf_exhibition")
@EqualsAndHashCode(callSuper = true)
public class Exhibition extends BfBaseEntity {
    private String name;
    private String coverPic;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime startDate;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime endDate;
    private String location;
    private String description;
    private Integer status;
    private Integer sort;

    @TableField("special_area")
    @Schema(description = "特殊展位面积")
    private BigDecimal specialArea;

    @TableField("special_booth_count")
    @Schema(description = "特殊展位数量")
    private Integer specialBoothCount;

    @TableField("standard_area")
    @Schema(description = "标准展位面积")
    private BigDecimal standardArea;

    @TableField("standard_booth_count")
    @Schema(description = "标准展位数量")
    private Integer standardBoothCount;

    @TableField("used_special_area")
    @Schema(description = "特殊展位已使用面积")
    private BigDecimal usedSpecialArea;

    @TableField("used_special_booth_count")
    @Schema(description = "特殊展位已使用数量")
    private Integer usedSpecialBoothCount;

    @TableField("used_standard_area")
    @Schema(description = "标准展位已使用面积")
    private BigDecimal usedStandardArea;

    @TableField("used_standard_booth_count")
    @Schema(description = "标准展位已使用数量")
    private Integer usedStandardBoothCount;

    @TableField("organizer")
    @Schema(description = "主办方")
    private String organizer;

    @TableField("contact_person")
    @Schema(description = "联系人")
    private String contactPerson;

    @TableField("contact_phone")
    @Schema(description = "联系电话")
    private String contactPhone;
}